home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / comm / news / GRn_2_0.readme < prev    next >
Text File  |  1993-08-16  |  9KB  |  296 lines

  1. Short: GRn 2.0 - Gadtools Read News for UUCP and TCP/IP
  2. Uploader: mbs@adastra.cvl.va.us (Michael B. Smith)
  3. Author: mbs@adastra.cvl.va.us (Michael B. Smith)
  4.  
  5.                     GRn 2.0 - Gadtools Read News version 2.0
  6.                                August 16, 1993
  7.  
  8.   GRn is a fully-featured Intuition based Newsreader for the Amiga running
  9.   2.04 or above. GRn works with AmigaUUCP, with C News, with TCP/IP using
  10.   the C= socket.library (via NNTP), with DNet, with direct-connect serial
  11.   connections, and with NFS mounted news partitions.
  12.  
  13.   GRn requires release 2.04 of AmigaDOS, and works with 2.1, 3.0 and 3.1.
  14.  
  15.   Copyright 1992, 1993 by Michael B. Smith.
  16.   Copyright 1991, 1992 by Michael H. Schwartz.
  17.  
  18.   All Rights Reserved.
  19.  
  20.   No warranties, express or implied, are available. Use at your own risk.
  21.   The authors have taken pains to attempt to produce quality software, but
  22.   by no means are we liable for anything it does.
  23.  
  24.   (TODO list at bottom)
  25.  
  26. GRn 2.0 now:
  27.  
  28.     works properly on 2.04, 2.1, 3.0 and 3.1
  29.  
  30.     automatically depth arranges custom screens when required
  31.  
  32.     uses the same text in requesters everywhere
  33.  
  34.     removes files from T: when using NNTP
  35.  
  36.     has more modularized code
  37.  
  38.     no longer crashes when a file isn't in news article format
  39.  
  40.     has the busy pointer set when Subscribing
  41.  
  42.     fails if NNTP startup fails
  43.  
  44.     is *much* smarter about screen and window sizing
  45.  
  46.     uses LESS THAN 1/2 the memory of 1.16f
  47.  
  48.     doesn't have problems with NNTP/socket.library startup
  49.  
  50.     doesn't have problems with Gadtools on 3.0 and 3.1
  51.  
  52.     has custom memory allocation routines that make it run much faster
  53.  
  54.     starts up faster
  55.  
  56.     no longer assumes that the user's grnrc has not gotten corrupted
  57.  
  58.     no longer assumes that Path:, Subject: and From: are valid
  59.  
  60.     doesn't leave a hanging signal when CTRL-C'ed
  61.  
  62.     handles errors from socket.library correctly
  63.  
  64.     strips NNTP messages properly and NNTP operations are now enhanced
  65.  
  66.     adds a References: header when following up to the first message in
  67.     a thread
  68.  
  69.     has Cancel working with NNTP
  70.  
  71.     has all I/O  AmigaDOS based
  72.  
  73.     has had all known Enforcer and Mungwall hits removed, including one
  74.     due to an AmigaDOS FGets() bug
  75.  
  76.     deals properly with empty newsgroups
  77.  
  78.     supports sockser.device and dnet.device in a system-friendly manner
  79.  
  80.     updates gadgets properly when subscribing
  81.  
  82.     has been completely ANSI-fied
  83.  
  84.     sorts the displayed newsgroup list prior to allowing the user to subscribe
  85.  
  86.     implements the SUBSCRIBE keyword
  87.  
  88.     implements the "Rescan News" button
  89.  
  90.     sets GTLV_Selected for the current article
  91.  
  92.     implements ROT-13 support with CTRL-X (no mouse equivalent)
  93.  
  94.     is not case-sensitive when scanning message headers
  95.  
  96.     is now case-insensitive when sort-by-subject
  97.  
  98.     implements Hide-Read messages -- this is the default
  99.  
  100.     has a friendlier crosspost message
  101.  
  102.     shows the first newsgroup after subscribing
  103.  
  104.     displays the error number when a posting error occurs
  105.  
  106.     sets GTLV_MakeVisible for V39 and above systems
  107.  
  108.     has been prepared for localization
  109.  
  110.     closes the custom screen when a low-memory abort occurs
  111.  
  112.     no longer requires the UULib: assign
  113.  
  114.     generates MIME headers for all mail messages and news articles
  115.  
  116.     implements the DISCARD option, such that read article do not have an
  117.     entry written to the user's grnrc -- reduces startup time and memory
  118.     usage of GRn
  119.  
  120.     presumes that if the user-defined nodename has a period in it, it is
  121.     a FQDN and the domainname is ignored
  122.  
  123.     prefixes a period to the user-defined domainname if it doesn't begin
  124.     with one
  125.  
  126.     when using socket.library NNTP, the hostname (FQDN) is obtained from
  127.     socket.library, and the user may not override those variables
  128.  
  129.     implements NNTP authentication
  130.  
  131.     has an improved grn/8 font
  132.  
  133.     does double click timing according to user preferences
  134.  
  135.     immediately observes a Hide Read request
  136.  
  137.     sets the busy pointer whenever the user's grnrc file is saved, or
  138.     the newsgroup status information is updated
  139.  
  140.     does not have memory leaks when a file was Published or a message is
  141.     mailed; and all temporary files are removed
  142.  
  143.     consolidates all ASL activities and has been prepared for an ASL
  144.     screenmode requester
  145.  
  146.     asks the user whether they wish to post a README as part 0 of a
  147.     Publish'ed file
  148.  
  149.     treats an empty file name as an abort condition in Publish
  150.  
  151.     uses the following algorithm:
  152.         /*
  153.         **  SetWhoAmI
  154.         **
  155.         **      Try to reasonably setup the string used for the From: and
  156.         **      Submitted-By: headers.
  157.         **
  158.         **      Finding the hostname is unreasonably complicated because
  159.         **      AmigaUUCP and Amiga C News and socket.library do not use the
  160.         **      same set of environment/configuration variables to set the
  161.         **      hostname.
  162.         **
  163.         **      The following precedence is used for determination of the
  164.         **      originating hostname:
  165.         **
  166.         **          1) If node is set, and domain is set, then the
  167.         **             originating host is the concatenation of those
  168.         **             two strings. If domain does not begin with a
  169.         **             period, one is added.
  170.         **
  171.         **          2) If node is set, and domain is not set then the
  172.         **             originating host is the node IF the node contains
  173.         **             a period. If the node does NOT contain a period,
  174.         **             then .UUCP is appended, and that becomes the
  175.         **             hostname.
  176.         **
  177.         **          3) Domain is not referred to any farther.
  178.         **
  179.         **          4) If node is not set, the mygethostname() is called
  180.         **             which should return the fully qualified hostname
  181.         **             from whatever networking software is in use (currently
  182.         **             it calls the socket.library gethostname()).
  183.         **
  184.         **          5) If mygethostname() failed (returns < 0), then host
  185.         **             is used to set the hostname.
  186.         **
  187.         **          6) If host is not set, we abort.
  188.         **
  189.         **      RealName and userName are used as they always have been.
  190.         */
  191.  
  192.         has shift-cursor-right do "Next Group with Articles"
  193.  
  194.         has shift-cursor-left do "Previous Group"
  195.  
  196.         implements the BugAddress environment variable for specifying the
  197.         email address to send bug reports
  198.  
  199.         sorts the newsgroup list after a subscribe
  200.  
  201.         uses a safer, Intuition friendly, method for locking out user input
  202.         when a requester is displayed
  203.  
  204.         has the Save and Print command set the busy pointer, and display the
  205.         "fuel gauge" requester immediately after filename selection
  206.  
  207.         has all requesters look alike
  208.  
  209.         implements the "_mark" button to allow a message to be marked as
  210.         unread
  211.  
  212.         prefers the NNTPSERVER command over HOSTNAME
  213.  
  214.         updates the window title after each article is displayed
  215.  
  216.         allows an empty UULib:Config file
  217.  
  218.         displays a message when retrieving the newsgroup list from an
  219.         NNTP server
  220.  
  221.         sets the busypointer when sending mail or posting news
  222.  
  223.         uses 32-bit values everywhere
  224.  
  225.         treats "re:" and "Re:" as equivalent when sorting by subject
  226.  
  227.         recognizes requester shortcuts per AUISG
  228.  
  229.         recognizes ESCape as a NO synonym in all requesters
  230.  
  231.         implements SCANALL to scan all files in subscribed newsgroups
  232.         during startup (to be used with CNEWS and UPDATERC)
  233.  
  234.         updates the article status display after Catchup
  235.  
  236.         updates the group status display after Junk
  237.  
  238.         respects scrollable public screens and does not require that all
  239.         of the window fit in the display clip
  240.  
  241.         sets up Gadgets per AUISG standards
  242.  
  243.         allows a TOP and LEFT specification of zero
  244.  
  245.         centers the status bars in Article and Group mode
  246.  
  247.         enforces a minimum window size of 620x200
  248.  
  249.         implements '0' as a synonym for 'C'atchup in Article Mode
  250.  
  251.         implements a guick move feature in subscribe mode
  252.  
  253.         implements HOST, USER=NAME and REALNAME as parameters and tooltypes;
  254.         not just environment variables
  255.  
  256.         implements the same keyboard shortcuts for Subscribe as are present
  257.         in Article Mode
  258.  
  259.         only retrieves the newsgroup file from an NNTP server once
  260.  
  261.         displays a fuel gauge if more than 5 articles have to be processed
  262.         in a newsgroup at startup
  263.  
  264.         implements the NOSCAN parameter
  265.  
  266.         only activates requester windows when the original window was
  267.         active
  268.  
  269.         no longer opens commodities.library
  270.  
  271.         properly parses boolean options from its icon
  272.  
  273.         allows its window to be resized
  274.  
  275.         implements the NORESIZE parameter to disallow resizing
  276.  
  277. GRn still doesn't:
  278.  
  279.         implement KILL files
  280.  
  281.         have localization features
  282.  
  283.         have an ASL screen-mode requester
  284.  
  285.         have a "Mark Mode"
  286.  
  287.         support XPK or UMS
  288.  
  289.         support a Unix-standard .newsrc
  290.  
  291.         have an Iconify option
  292.  
  293.         directly support MIME messages
  294.  
  295.         have menus
  296.